//public class Main {
//    public static void main(String[] args) {
//        System.out.println("Problem? The Solution: Programming.");
//    }
//}

//
//import java.util.Scanner;
//
//public class Main {
//    public static void main(String[] args) {
//        Scanner scanner = new Scanner(System.in);
//        int a = scanner.nextInt();
//        int b = scanner.nextInt();
//        System.out.println(b-a);
//    }
//}


//
//import java.util.Scanner;
//
//public class Main {
//    public static void main(String[] args) {
//        Scanner scanner = new Scanner(System.in);
//        int a = scanner.nextInt();
//        int b = scanner.nextInt();
//        if(a == 2) {
//            System.out.println("-");
//            System.out.println("stop");
//        }else {
//            //红灯
//            if(a == 0) {
//                System.out.println("biii");
//                System.out.println("stop");
//            }else if(a == 1 && b == 1) {
//                System.out.println("-");
//                System.out.println("move");
//            }else if(a == 1 && b == 0) {
//                System.out.println("dudu");
//                System.out.println("move");
//            }
//        }
//    }
//}
//

//
//import java.util.Scanner;
//
//public class Main {
//    public static void main(String[] args) {
//        Scanner scanner = new Scanner(System.in);
//        int n = scanner.nextInt(); //人数
//        int m =scanner.nextInt(); //竟能数
//        int sum = 0;
//        for(int i = 0; i<m; i++) {
//            int a = scanner.nextInt();
//            sum += a;
//        }
//        int k = n * (m-1);
//        if(sum - k>0) {
//            System.out.println(sum-k);
//        }else {
//            System.out.println(0);
//        }
//
//    }
//}


/*


import java.util.Scanner;
import java.util.Set;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int n = scanner.nextInt();
        String[] word = new String[n];
        for (int i = 0; i < n; i++) {
            word[i] = scanner.next();
        }
        int k = scanner.nextInt();
        scanner.nextLine();
        String line = scanner.nextLine();
        StringBuffer str = new StringBuffer(line);
        int count = 0;

        String st = "<censored>";

        while (true) {
            //查找违禁词
            boolean flag = true;
            for (int i = 0; i < n; i++) {
                int index = str.indexOf(word[i]);
                if (index != -1) {
                    count++;
                    int len = word[i].length();
                    str.replace(index, index + len, st);
                    flag = false;
                }
            }
            if (flag) {
                break;
            }
        }

        if (count < k) {
            System.out.println(str);
        } else {
            System.out.println(count);
            System.out.println("He Xie Ni Quan Jia!");
        }
    }
}


 */

//
//import java.util.Scanner;
//
//public class Main {
//    public static void main(String[] args) {
//        Scanner scanner = new Scanner(System.in);
//        int n = scanner.nextInt();
//        double[] price = new double[n+1];
//        for(int i = 1; i<=n; i++) {
//            price[i] = scanner.nextDouble();
//        }
//        double sum = 0;
//        int[] cnt = new int[n+1];
//        while (true) {
//            int a = scanner.nextInt();
//            int b = scanner.nextInt();
//            if(a == 0) break;
//            sum += price[a] * b;
//            cnt[a] += b;
//        }
//
//        for(int i = 1; i<=n;i++) {
//            System.out.println(cnt[i]);
//        }
//        System.out.printf("%.2f",sum);
//    }
//}
//
//
//import java.util.ArrayList;
//import java.util.LinkedList;
//import java.util.List;
//import java.util.Scanner;
//
//public class Main {
//    public static void main(String[] args) {
//        Scanner scanner = new Scanner(System.in);
//        int a = scanner.nextInt();
//        int b = scanner.nextInt();
//        int maxLen = 0;
//        List<Integer> list = new ArrayList<>();
//
//        for(int i = a; i<=b; i++) {
//            int ret = f(i);
//            if(ret == maxLen) {
//                list.add(i);
//            }else if(ret > maxLen) {
//                maxLen = ret;
//                list = new ArrayList<>();
//                list.add(i);
//            }
//        }
//
//        System.out.println(maxLen);
//        for(int i = 0; i<list.size(); i++) {
//            System.out.print(list.get(i));
//            if(i < list.size()-1) {
//                System.out.print(" ");
//            }
//        }
//    }
//
//    public static int f(int n) {
//        int mul = 1;
//        int count = 0;
//        int t = n;
//        while (t >= 10) {
//            mul = 1;
//            while (t!=0) {
//                mul *= t%10;
//                t/=10;
//            }
//            t = mul;
//            count++;
//
//            //System.out.println(mul + " " + t);
//        }
//        return count;
//    }
//}
//
//
//import java.util.Scanner;
//
//public class Main {
//    static int[][] map = new int[10][10];
//    public static void main(String[] args) {
//        Scanner scanner = new Scanner(System.in);
//        int n = scanner.nextInt();
//        while (n-- > 0) {
//            //输入
//            for(int i = 1; i<=9; i++) {
//                for(int j = 1; j<=9; j++) {
//                    map[i][j] = scanner.nextInt();
//                }
//            }
//
//            if(check1() && check2()) {
//                System.out.println(1);
//            }else {
//                System.out.println(0);
//            }
//        }
//    }
//    //行
//    public static boolean check1() {
//        for(int i = 1; i<=9; i++) {
//            int[] hash1 = new int[10];
//            int[] hash2 = new int[10];
//
//            for(int j = 1; j<=9; j++) {
//
//                if(map[i][j] >= 10 || map[i][j] <= 0 || map[j][i] <= 0 || map[j][i] >=10) {
//                    return false;
//                }
//                hash1[map[i][j]] ++;
//                hash2[map[j][i]] ++;
//            }
//
//            for(int k = 1; k<=9; k++) {
//                if(hash1[k]!=1 || hash2[k]!=1) return false;
//            }
//        }
//
//        return true;
//    }
//
//    public static boolean check2() {
//        int[][][] hash = new int[4][4][10];
//        for(int i = 1; i<=9; i++) {
//            for(int j = 1; j<=9; j++) {
//                if(map[i][j] >= 10 || map[i][j] <= 0 || map[j][i] <= 0 || map[j][i] >=10) {
//                    return false;
//                }
//                int x = (i-1)/3;
//                int y = (j-1)/3;
//                hash[x][y][map[i][j]] ++;
//            }
//        }
//
//        for(int i = 0; i<3; i++) {
//            for(int j = 0; j<3; j++) {
//                for(int k = 1; k<=9; k++) {
//                    if(hash[i][j][k] !=1) return false;
//                }
//            }
//        }
//        return true;
//    }
//}

/*
  0 1 2 | 3 4 5 | 6 7 8
0
1
2

3
4
5

6
7
8
 */
//
//import java.util.HashSet;
//import java.util.Scanner;
//import java.util.Set;
//import java.util.TreeSet;
//
//public class Main {
//    public static void main(String[] args) {
//        Scanner scanner = new Scanner(System.in);
//        int n = scanner.nextInt(); //总人数
//        int m = scanner.nextInt(); //物品总数
//        Set<Integer>[] sets = new TreeSet[n];
//        for(int i = 0; i<n; i++) {
//            int k = scanner.nextInt();
//            sets[i] = new TreeSet<>();
//            for(int j = 0; j<k; j++) {
//                int a = scanner.nextInt();
//                sets[i].add(a);
//            }
//        }
//        int q = scanner.nextInt();
//        while (q-- > 0) {
//            int a = scanner.nextInt();
//            int b = scanner.nextInt();
//            int count = 0;
//            for(int i = 0; i<n;i++) {
//                if (sets[i].contains(a) && sets[i].contains(b)) {
//                    count++;
//                }
//            }
//            System.out.println(count);
//        }
//
//    }
//}


//
//import java.util.HashSet;
//import java.util.Scanner;
//import java.util.Set;
//import java.util.TreeSet;
//
//public class Main {
//    public static void main(String[] args) {
//        Scanner scanner = new Scanner(System.in);
//        int n = scanner.nextInt(); //总人数
//        int m = scanner.nextInt(); //物品总数
//        boolean[][] hash = new boolean[n][100002];
//        for(int i = 0; i<n; i++) {
//            int k = scanner.nextInt();
//            for(int j = 0; j<k; j++) {
//                int a = scanner.nextInt();
//                hash[i][a] = true;
//            }
//        }
//        int q = scanner.nextInt();
//        while (q-- > 0) {
//            int a = scanner.nextInt();
//            int b = scanner.nextInt();
//            int count = 0;
//            for(int i = 0; i<n;i++) {
//                if (hash[i][a] && hash[i][b]) {
//                    count++;
//                }
//            }
//            System.out.println(count);
//        }
//    }
//}
//
//

/*


import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.*;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String[] value = br.readLine().split(" ");
        int n = Integer.parseInt(value[0]);
        String[] str = new String[n];
        HashMap<String, List<Integer>> map = new HashMap<>();

        for(int i = 0; i<n; i++) {
            str[i] = br.readLine();
            StringBuffer t = new StringBuffer();
            t.append(str[i].charAt(0));
            for(int j = 1; j<str[i].length(); j++) {
                if(str[i].charAt(j-1)==' ' && str[i].charAt(j) !=' ') {
                    t.append(str[i].charAt(j));
                }
            }

            if(!map.containsKey(t.toString())) {
                List<Integer>list = new ArrayList<>();
                list.add(i);
                map.put(t.toString(), list);
            }else {
                map.get(t.toString()).add(i);
            }
        }

        value = br.readLine().split(" ");
        int q = Integer.parseInt(value[0]);
        while (q -- > 0) {
            String str1 = br.readLine();
            StringBuffer t = new StringBuffer();
            t.append(str1.charAt(0));
            for(int j = 1; j<str1.length(); j++) {
                if(str1.charAt(j-1)==' ' && str1.charAt(j) !=' ') {
                    t.append(str1.charAt(j));
                }
            }
            List<Integer>list = map.get(t.toString());
            if(list == null) {
                System.out.println(str1);
            }else {
                int size = list.size();
                String[] strs = new String[size];

                for(int i = 0; i<size; i++) {
                    strs[i] = new String(str[list.get(i)]);
                }

                Arrays.sort(strs);
                for(int i = 0; i<size; i++) {
                    System.out.print(strs[i]);
                    if(i<size-1) {
                        System.out.print("|");
                    }
                }
                System.out.println();
            }
        }
    }
}
 */
//
//import java.util.*;
//
//public class Main {
//    public static void main(String[] args) {
//        Scanner scanner = new Scanner(System.in);
//        int n = scanner.nextInt(); //总人数
//        int m = scanner.nextInt(); //物品总数
//        List<List<Integer>> lists = new ArrayList<>();
//        for(int i = 0; i<n; i++) {
//            int k = scanner.nextInt();
//            lists.add(new ArrayList<>());
//            for(int j = 0; j<k; j++) {
//                int a = scanner.nextInt();
//                lists.get(i).add(a);
//            }
//        }
//        int q = scanner.nextInt();
//        while (q-- > 0) {
//            int a = scanner.nextInt();
//            int b = scanner.nextInt();
//            int count = 0;
//            for(int i = 0; i<n;i++) {
//                if (hash[i][a] && hash[i][b]) {
//                    count++;
//                }
//            }
//            System.out.println(count);
//        }
//    }
//}
//
//
//import java.util.Scanner;
//
//public class Main {
//    public static void main(String[] args) {
//        Scanner scanner = new Scanner(System.in);
//        int n = scanner.nextInt();
//        if(check(n) != -1) {
//
//        }else {
//
//        }
//    }
//    public static int  check(int n) {
//        n-=1;
//        for(int i = 2; i<n; i++) {
//            if(n%i==0) {
//                return i;
//            }
//        }
//        return -1;
//    }
//}


import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Scanner;
import java.util.Set;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int n = Integer.parseInt(br.readLine());
        String[] word = new String[n];
        for (int i = 0; i < n; i++) {
            word[i] = br.readLine();
        }
        int k = Integer.parseInt(br.readLine());
        String line = br.readLine();
        StringBuffer str = new StringBuffer(line);
        int count = 0;

        String st = "<censored>";

        while (true) {
            //查找违禁词
            boolean flag = true;
            for (int i = 0; i < n; i++) {
                int index = str.indexOf(word[i]);
                if (index != -1) {
                    count++;
                    int len = word[i].length();
                    str.replace(index, index + len, st);
                    flag = false;
                }
            }

            if (flag) {
                break;
            }
        }

        while (true) {
            //查找违禁词
            boolean flag = true;
            for (int i = 0; i < n; i++) {
                int index = str.lastIndexOf(word[i]);
                if (index != -1) {
                    count++;
                    int len = word[i].length();
                    str.replace(index, index + len, st);
                    flag = false;
                }
            }

            if (flag) {
                break;
            }
        }

        if (count < k) {
            System.out.println(str);
        } else {
            System.out.println(count);
            System.out.println("He Xie Ni Quan Jia!");
        }
    }
}